package org.keyyond.ms.business.dao;

import java.util.List;

import org.apache.commons.lang.StringUtils;
import org.keyyond.ms.business.mapper.MsCodeValueMapper;
import org.keyyond.ms.business.model.MsCodeValue;
import org.keyyond.ms.business.util.BaseDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

@Component
public class MsCodeValueDao extends BaseDao<MsCodeValue> {

	@Autowired
	private MsCodeValueMapper codeValueMapper;
	
	/**
	 * 根据分类码、公司编码、部门编码获取对应的所有参数列表，ckey必填，公司编码与部门编码可为空
	* @author Allan
	* @param MsCodeValue对象 ，ckey必须有值，否则返回空
	* @return ArrayList<MsCodeVaue>
	* @throws UnsupportedEncodingException 根据具体的异常类型抛出
	 */
	public List<MsCodeValue> getCodeValueByKeyAndCompanycodeAndDeptcode(MsCodeValue record)
	{
		if(record==null || StringUtils.isEmpty(record.getCkey()))
		{
			return null;
		}
		else
		{
			return codeValueMapper.getCodeValueByKeyAndCompanycodeAndDeptcode(record);
		}
	}
	
	/**
	 * 根据分类码、ccode、公司编码、部门编码获取对应的所有参数列表，ckey，ccode必填，公司编码与部门编码可为空
	* @author Allan
	* @param MsCodeValue对象 ，ckey、ccode必须有值，否则返回空
	* @return String cvalue
	* @throws UnsupportedEncodingException 根据具体的异常类型抛出
	 */
	public MsCodeValue getValueByKeyAndCodeAndCompanycodeAndDeptcode(MsCodeValue record)
	{
		if(record==null || StringUtils.isEmpty(record.getCkey()))
		{
			return null;
		}
		else
		{
			return codeValueMapper.getValueByKeyAndCodeAndCompanycodeAndDeptcode(record);
		}
	}
}
